%ifndef __userenv_INC__
%define __userenv_INC__

IMPORT AddDesktopItemA, 32
IMPORT AddDesktopItemW, 32
IMPORT AddGPO, 84
IMPORT AddItemA, 36
IMPORT AddItemW, 36
IMPORT AllocGpContainer, 60
IMPORT ApplyGroupPolicy, 20
IMPORT ApplySystemPolicyA, 24
IMPORT ApplySystemPolicyW, 24
IMPORT CheckAccessForPolicyGeneration, 20
IMPORT CheckForSkippedExtensions, 8
IMPORT CheckXForestLogon, 4
IMPORT CopyProfileDirectoryA, 12
IMPORT CopyProfileDirectoryExA, 20
IMPORT CopyProfileDirectoryExW, 20
IMPORT CopyProfileDirectoryW, 12
IMPORT CopySystemProfile, 4
IMPORT CreateEnvironmentBlock, 12
IMPORT CreateGroupA, 8
IMPORT CreateGroupExA, 16
IMPORT CreateGroupExW, 16
IMPORT CreateGroupW, 8
IMPORT CreateLinkFileA, 40
IMPORT CreateLinkFileExA, 48
IMPORT CreateLinkFileExW, 48
IMPORT CreateLinkFileW, 40
IMPORT CreateURLFile, 36
IMPORT CreateUserProfileA, 20
IMPORT CreateUserProfileExA, 24
IMPORT CreateUserProfileExW, 24
IMPORT CreateUserProfileW, 20
IMPORT DeleteDesktopItemA, 8
IMPORT DeleteDesktopItemW, 8
IMPORT DeleteGroupA, 8
IMPORT DeleteGroupW, 8
IMPORT DeleteItemA, 16
IMPORT DeleteItemW, 16
IMPORT DeleteLinkFileA, 16
IMPORT DeleteLinkFileW, 16
IMPORT DeleteProfileA, 12
IMPORT DeleteProfileW, 12
IMPORT DeleteURLFile, 16
IMPORT DestroyEnvironmentBlock, 4
IMPORT DetermineProfilesLocation, 4
IMPORT EnterCriticalPolicySection, 4
IMPORT EnterUserProfileLock, 4
IMPORT ExpandEnvironmentStringsForUserA, 16
IMPORT ExpandEnvironmentStringsForUserW, 16
IMPORT FilterGPOs, 8
IMPORT ForceSyncFgPolicy, 4
IMPORT FreeGPOListA, 4
IMPORT FreeGPOListW, 4
IMPORT FreeGpoInfo, 4
IMPORT GPOExceptionFilter, 4
IMPORT GenerateRsopPolicy, 48
IMPORT GetAllUsersProfileDirectoryA, 8
IMPORT GetAllUsersProfileDirectoryW, 8
IMPORT GetAppliedGPOListA, 20
IMPORT GetAppliedGPOListW, 20
IMPORT GetDefaultUserProfileDirectoryA, 8
IMPORT GetDefaultUserProfileDirectoryW, 8
IMPORT GetGPOListA, 24
IMPORT GetGPOListW, 24
IMPORT GetGroupPolicyNetworkName, 8
IMPORT GetNextFgPolicyRefreshInfo, 8
IMPORT GetPreviousFgPolicyRefreshInfo, 8
IMPORT GetProfileType, 4
IMPORT GetProfilesDirectoryA, 8
IMPORT GetProfilesDirectoryW, 8
IMPORT GetSystemTempDirectoryA, 8
IMPORT GetSystemTempDirectoryW, 8
IMPORT GetUserAppDataPathA, 12
IMPORT GetUserAppDataPathW, 12
IMPORT GetUserProfileDirFromSidA, 12
IMPORT GetUserProfileDirFromSidW, 12
IMPORT GetUserProfileDirectoryA, 12
IMPORT GetUserProfileDirectoryW, 12
IMPORT GetUserSid, 4
IMPORT GetWbemServices, 20
IMPORT InitializeProfiles, 4
IMPORT InitializeUserProfile, 0
IMPORT IsSyncForegroundPolicyRefresh, 8
IMPORT LeaveCriticalPolicySection, 4
IMPORT LeaveUserProfileLock, 4
IMPORT LoadUserProfileA, 8
IMPORT LoadUserProfileW, 8
IMPORT LogExtSessionStatus, 16
IMPORT LogGpoData, 4
IMPORT LogSessionData, 8
IMPORT MigrateNT4ToNT5, 0
IMPORT PingComputer, 8
IMPORT ProcessGroupPolicyCompleted, 12
IMPORT ProcessGroupPolicyCompletedEx, 16
IMPORT ProcessMachAndUserGpoList, 48
IMPORT ReadGPExtensions, 4
IMPORT RefreshPolicy, 4
IMPORT RefreshPolicyEx, 8
IMPORT RegisterGPNotification, 8
IMPORT ResetUserSpecialFolderPaths, 0
IMPORT RsopAccessCheckByType, 44
IMPORT RsopFileAccessCheck, 20
IMPORT RsopLoggingEnabled, 0
IMPORT RsopResetPolicySettingStatus, 12
IMPORT RsopSetPolicySettingStatus, 20
IMPORT SecureUserProfiles, 0
IMPORT SetNextFgPolicyRefreshInfo, 12
IMPORT SetupGPOFilter, 4
IMPORT ShutdownGPOProcessing, 4
IMPORT SignalMachinePolicyForegroundProcessingDone, 0
IMPORT SignalUserPolicyForegroundProcessingDone, 0
IMPORT TranslateNameXForest, 20
IMPORT UnloadGPExtensions, 4
IMPORT UnloadUserProfile, 8
IMPORT UnregisterGPNotification, 4
IMPORT UpdateExtSessionStatus, 16
IMPORT WaitForMachinePolicyForegroundProcessing, 0
IMPORT WaitForUserPolicyForegroundProcessing, 0

%ifdef UNICODE

%define AddDesktopItem AddDesktopItemW
%define AddItem AddItemW
%define ApplySystemPolicy ApplySystemPolicyW
%define CopyProfileDirectory CopyProfileDirectoryW
%define CopyProfileDirectoryEx CopyProfileDirectoryExW
%define CreateGroup CreateGroupW
%define CreateGroupEx CreateGroupExW
%define CreateLinkFile CreateLinkFileW
%define CreateLinkFileEx CreateLinkFileExW
%define CreateUserProfile CreateUserProfileW
%define CreateUserProfileEx CreateUserProfileExW
%define DeleteDesktopItem DeleteDesktopItemW
%define DeleteGroup DeleteGroupW
%define DeleteItem DeleteItemW
%define DeleteLinkFile DeleteLinkFileW
%define DeleteProfile DeleteProfileW
%define ExpandEnvironmentStringsForUser ExpandEnvironmentStringsForUserW
%define FreeGPOList FreeGPOListW
%define GetAllUsersProfileDirectory GetAllUsersProfileDirectoryW
%define GetAppliedGPOList GetAppliedGPOListW
%define GetDefaultUserProfileDirectory GetDefaultUserProfileDirectoryW
%define GetGPOList GetGPOListW
%define GetProfilesDirectory GetProfilesDirectoryW
%define GetSystemTempDirectory GetSystemTempDirectoryW
%define GetUserAppDataPath GetUserAppDataPathW
%define GetUserProfileDirFromSid GetUserProfileDirFromSidW
%define GetUserProfileDirectory GetUserProfileDirectoryW
%define LoadUserProfile LoadUserProfileW

%else  ;// ANSI

%define AddDesktopItem AddDesktopItemA
%define AddItem AddItemA
%define ApplySystemPolicy ApplySystemPolicyA
%define CopyProfileDirectory CopyProfileDirectoryA
%define CopyProfileDirectoryEx CopyProfileDirectoryExA
%define CreateGroup CreateGroupA
%define CreateGroupEx CreateGroupExA
%define CreateLinkFile CreateLinkFileA
%define CreateLinkFileEx CreateLinkFileExA
%define CreateUserProfile CreateUserProfileA
%define CreateUserProfileEx CreateUserProfileExA
%define DeleteDesktopItem DeleteDesktopItemA
%define DeleteGroup DeleteGroupA
%define DeleteItem DeleteItemA
%define DeleteLinkFile DeleteLinkFileA
%define DeleteProfile DeleteProfileA
%define ExpandEnvironmentStringsForUser ExpandEnvironmentStringsForUserA
%define FreeGPOList FreeGPOListA
%define GetAllUsersProfileDirectory GetAllUsersProfileDirectoryA
%define GetAppliedGPOList GetAppliedGPOListA
%define GetDefaultUserProfileDirectory GetDefaultUserProfileDirectoryA
%define GetGPOList GetGPOListA
%define GetProfilesDirectory GetProfilesDirectoryA
%define GetSystemTempDirectory GetSystemTempDirectoryA
%define GetUserAppDataPath GetUserAppDataPathA
%define GetUserProfileDirFromSid GetUserProfileDirFromSidA
%define GetUserProfileDirectory GetUserProfileDirectoryA
%define LoadUserProfile LoadUserProfileA

%endif  ;// UNICODE

%endif